﻿// --------------------------------------------------------------------------------------------------------------------
// <copyright file="StudyDefinitionViewModelBase.cs" company="ELEN 7045 GROUP II">>
//   
// </copyright>
// <summary>
//   Abstract StudyDefinition View Model base class.
// </summary>
// --------------------------------------------------------------------------------------------------------------------

namespace Presentation.Module.StudyDefinition.ViewModels
{
    #region

    using Microsoft.Practices.Prism.Regions;

    using Presentation.Module.StudyDefinition.Interfaces.Services;

    #endregion

    /// <summary>
    /// Abstract StudyDefinition View Model base class.
    /// </summary>
    public abstract class StudyDefinitionViewModelBase
    {
        #region Constructors and Destructors

        /// <summary>
        /// Initializes a new instance of the <see cref="StudyDefinitionViewModelBase"/> class.
        /// </summary>
        /// <param name="regionManager">
        /// The region Manager.
        /// </param>
        /// <param name="studiesService">
        /// The studies service.
        /// </param>
        protected StudyDefinitionViewModelBase(IRegionManager regionManager, IStudiesUIProxyService studiesService)
        {
            this.RegionManagerInstance = regionManager;
            this.StudiesServiceInstance = studiesService;
        }

        #endregion

        #region Properties

        /// <summary>
        /// Gets the region manager instance.
        /// </summary>
        protected IRegionManager RegionManagerInstance { get; private set; }

        /// <summary>
        /// Gets A studies service instance
        /// </summary>
        protected IStudiesUIProxyService StudiesServiceInstance { get; private set; }
        #endregion
    }
}
